home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 October: Mac OS SDK / Dev.CD Oct 97 SDK1.toast / Development Kits (Disc 1) / Apple Shared Library Manager / ASLM Examples / TestTools / Sources / MITest1.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-11-19  |  1.8 KB  |  105 lines  |  [TEXT/MPS ]

  1. /*
  2.     File:        MITest1.h
  3.  
  4.     Contains:    Declarations for multiple-inheritance test classes
  5.  
  6.     Copyright:    © 1993-1994 by Apple Computer, Inc., all rights reserved.
  7.  
  8. */
  9.  
  10. #ifndef __MITEST1__
  11. #define __MITEST1__
  12.  
  13. #ifndef __LIBRARYMANAGER__
  14. #include <LibraryManager.h>
  15. #endif
  16.  
  17. #define kMMixin1ID    "quin:test$MMixin1,1.2"
  18.  
  19. class MMixin1 : public MDynamic
  20. {
  21.     protected:
  22.                         MMixin1(int a);
  23.         virtual            ~_CDECL MMixin1();
  24.     
  25.     public:
  26.         virtual int        Add1(int a);
  27.         virtual int        Sub1(int a);
  28.         
  29.     int        fFieldm;
  30. };
  31.  
  32. #define kMMixin2ID    "quin:test$MMixin2,1.2"
  33.  
  34. class MMixin2 : public MDynamic
  35. {
  36.     protected:
  37.                         MMixin2(int a);
  38.         virtual            ~_CDECL MMixin2();
  39.     
  40.     public:
  41.         virtual int        Add2(int a);
  42.         virtual int        Sub2(int a);
  43.         
  44.     int        fFieldm;
  45. };
  46.  
  47. #define kMMixin3ID    "quin:test$MMixin3,1.2"
  48.  
  49. class MMixin3 : public MDynamic
  50. {
  51.     protected:
  52.                         MMixin3(int a);
  53.         virtual            ~_CDECL MMixin3();
  54.     
  55.     public:
  56.         virtual int        Add3(int a);
  57.         virtual int        Sub3(int a);
  58.         
  59.     int        fFieldm;
  60. };
  61. //
  62. // Non-shared class
  63. //
  64. class TMainClass : public TStdDynamic
  65. {
  66.     public:
  67.                         TMainClass(int a);
  68.         virtual            ~_CDECL TMainClass();
  69.         
  70.  
  71.         virtual int        Mul(int a);
  72.         virtual int        Div(int a);
  73.         
  74.     int        fFieldt;
  75. };
  76.  
  77. #define kTMixedClassID    "quin:test$TMixedClass,1.2"
  78.  
  79. class TMixedClass : public TMainClass, virtual public MMixin1, public MMixin2
  80. {
  81.     public:
  82.                         TMixedClass(int a);
  83.         virtual            ~_CDECL TMixedClass();
  84.         
  85.         virtual int        Sub1(int a);
  86.         virtual int        Div(int a);
  87.         virtual int        Add2(int a);
  88. };
  89.  
  90. #define kTMixedClass2ID    "quin:test$TMixedClass2,1.2"
  91.  
  92. class TMixedClass2 : public TMixedClass, virtual public MMixin1, public MMixin3
  93. {
  94.     public:
  95.                         TMixedClass2(int a);
  96.         virtual            ~_CDECL TMixedClass2();
  97.         
  98.         virtual int        Sub2(int a);
  99.         virtual int        Mul(int a);
  100.         virtual int        Add1(int a);
  101.         virtual int        Add3(int a);
  102. };
  103.  
  104. #endif
  105.